/**
 * <copyright>
 * Copyrigth 2007 Aurelien Moreau
 *
 * This file is part of ProcessShop.
 *
 * ProcessShop is free software; you can redistribute it and/or modify
 * it under the terms of the GNU Lesser General Public License as published by
 * the Free Software Foundation; either version 2 of the License, or
 * (at your option) any later version.
 * 
 * ProcessShop is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU Lesser General Public License for more details.
 * 
 * You should have received a copy of the GNU Lesser General Public License
 * along with ProcessShop; if not, write to the Free Software
 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
 * </copyright>
 *
 * $Id$
 */
package net.yienyien.process.folder.stdPatterns;

import net.yienyien.process.folder.artifacts.ArtifactsPackage;

import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.EPackage;

/**
 * <!-- begin-user-doc -->
 * The <b>Package</b> for the model.
 * It contains accessors for the meta objects to represent
 * <ul>
 *   <li>each class,</li>
 *   <li>each feature of each class,</li>
 *   <li>each enum,</li>
 *   <li>and each data type</li>
 * </ul>
 * <!-- end-user-doc -->
 * @see net.yienyien.process.folder.stdPatterns.StdPatternsFactory
 * @model kind="package"
 * @generated
 */
public interface StdPatternsPackage extends EPackage {
	/**
	 * The package name.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	String eNAME = "stdPatterns";

	/**
	 * The package namespace URI.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	String eNS_URI = "http://www.yienyien.net/process/folder/stdPatterns";

	/**
	 * The package namespace name.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	String eNS_PREFIX = "stdPatterns";

	/**
	 * The singleton instance of the package.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	StdPatternsPackage eINSTANCE = net.yienyien.process.folder.stdPatterns.impl.StdPatternsPackageImpl.init();

	/**
	 * The meta object id for the '{@link net.yienyien.process.folder.stdPatterns.impl.StdBPDPatternImpl <em>Std BPD Pattern</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see net.yienyien.process.folder.stdPatterns.impl.StdBPDPatternImpl
	 * @see net.yienyien.process.folder.stdPatterns.impl.StdPatternsPackageImpl#getStdBPDPattern()
	 * @generated
	 */
	int STD_BPD_PATTERN = 0;

	/**
	 * The feature id for the '<em><b>Name</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int STD_BPD_PATTERN__NAME = ArtifactsPackage.BPD_PATTERN__NAME;

	/**
	 * The number of structural features of the '<em>Std BPD Pattern</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int STD_BPD_PATTERN_FEATURE_COUNT = ArtifactsPackage.BPD_PATTERN_FEATURE_COUNT + 0;

	/**
	 * The meta object id for the '{@link net.yienyien.process.folder.stdPatterns.impl.FlowImpl <em>Flow</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see net.yienyien.process.folder.stdPatterns.impl.FlowImpl
	 * @see net.yienyien.process.folder.stdPatterns.impl.StdPatternsPackageImpl#getFlow()
	 * @generated
	 */
	int FLOW = 1;

	/**
	 * The feature id for the '<em><b>Name</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int FLOW__NAME = STD_BPD_PATTERN__NAME;

	/**
	 * The number of structural features of the '<em>Flow</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int FLOW_FEATURE_COUNT = STD_BPD_PATTERN_FEATURE_COUNT + 0;

	/**
	 * The meta object id for the '{@link net.yienyien.process.folder.stdPatterns.impl.OtherImpl <em>Other</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see net.yienyien.process.folder.stdPatterns.impl.OtherImpl
	 * @see net.yienyien.process.folder.stdPatterns.impl.StdPatternsPackageImpl#getOther()
	 * @generated
	 */
	int OTHER = 2;

	/**
	 * The feature id for the '<em><b>Name</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int OTHER__NAME = STD_BPD_PATTERN__NAME;

	/**
	 * The number of structural features of the '<em>Other</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int OTHER_FEATURE_COUNT = STD_BPD_PATTERN_FEATURE_COUNT + 0;

	/**
	 * The meta object id for the '{@link net.yienyien.process.folder.stdPatterns.impl.PickImpl <em>Pick</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see net.yienyien.process.folder.stdPatterns.impl.PickImpl
	 * @see net.yienyien.process.folder.stdPatterns.impl.StdPatternsPackageImpl#getPick()
	 * @generated
	 */
	int PICK = 3;

	/**
	 * The feature id for the '<em><b>Name</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int PICK__NAME = STD_BPD_PATTERN__NAME;

	/**
	 * The number of structural features of the '<em>Pick</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int PICK_FEATURE_COUNT = STD_BPD_PATTERN_FEATURE_COUNT + 0;

	/**
	 * The meta object id for the '{@link net.yienyien.process.folder.stdPatterns.impl.RepeatImpl <em>Repeat</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see net.yienyien.process.folder.stdPatterns.impl.RepeatImpl
	 * @see net.yienyien.process.folder.stdPatterns.impl.StdPatternsPackageImpl#getRepeat()
	 * @generated
	 */
	int REPEAT = 4;

	/**
	 * The feature id for the '<em><b>Name</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int REPEAT__NAME = STD_BPD_PATTERN__NAME;

	/**
	 * The number of structural features of the '<em>Repeat</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int REPEAT_FEATURE_COUNT = STD_BPD_PATTERN_FEATURE_COUNT + 0;

	/**
	 * The meta object id for the '{@link net.yienyien.process.folder.stdPatterns.impl.RepeatWhileImpl <em>Repeat While</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see net.yienyien.process.folder.stdPatterns.impl.RepeatWhileImpl
	 * @see net.yienyien.process.folder.stdPatterns.impl.StdPatternsPackageImpl#getRepeatWhile()
	 * @generated
	 */
	int REPEAT_WHILE = 5;

	/**
	 * The feature id for the '<em><b>Name</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int REPEAT_WHILE__NAME = STD_BPD_PATTERN__NAME;

	/**
	 * The number of structural features of the '<em>Repeat While</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int REPEAT_WHILE_FEATURE_COUNT = STD_BPD_PATTERN_FEATURE_COUNT + 0;

	/**
	 * The meta object id for the '{@link net.yienyien.process.folder.stdPatterns.impl.SequenceImpl <em>Sequence</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see net.yienyien.process.folder.stdPatterns.impl.SequenceImpl
	 * @see net.yienyien.process.folder.stdPatterns.impl.StdPatternsPackageImpl#getSequence()
	 * @generated
	 */
	int SEQUENCE = 6;

	/**
	 * The feature id for the '<em><b>Name</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int SEQUENCE__NAME = STD_BPD_PATTERN__NAME;

	/**
	 * The number of structural features of the '<em>Sequence</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int SEQUENCE_FEATURE_COUNT = STD_BPD_PATTERN_FEATURE_COUNT + 0;

	/**
	 * The meta object id for the '{@link net.yienyien.process.folder.stdPatterns.impl.SwitchImpl <em>Switch</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see net.yienyien.process.folder.stdPatterns.impl.SwitchImpl
	 * @see net.yienyien.process.folder.stdPatterns.impl.StdPatternsPackageImpl#getSwitch()
	 * @generated
	 */
	int SWITCH = 7;

	/**
	 * The feature id for the '<em><b>Name</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int SWITCH__NAME = STD_BPD_PATTERN__NAME;

	/**
	 * The number of structural features of the '<em>Switch</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int SWITCH_FEATURE_COUNT = STD_BPD_PATTERN_FEATURE_COUNT + 0;

	/**
	 * The meta object id for the '{@link net.yienyien.process.folder.stdPatterns.impl.SynchronizingProcessImpl <em>Synchronizing Process</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see net.yienyien.process.folder.stdPatterns.impl.SynchronizingProcessImpl
	 * @see net.yienyien.process.folder.stdPatterns.impl.StdPatternsPackageImpl#getSynchronizingProcess()
	 * @generated
	 */
	int SYNCHRONIZING_PROCESS = 8;

	/**
	 * The feature id for the '<em><b>Name</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int SYNCHRONIZING_PROCESS__NAME = STD_BPD_PATTERN__NAME;

	/**
	 * The number of structural features of the '<em>Synchronizing Process</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int SYNCHRONIZING_PROCESS_FEATURE_COUNT = STD_BPD_PATTERN_FEATURE_COUNT + 0;

	/**
	 * The meta object id for the '{@link net.yienyien.process.folder.stdPatterns.impl.WhileImpl <em>While</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see net.yienyien.process.folder.stdPatterns.impl.WhileImpl
	 * @see net.yienyien.process.folder.stdPatterns.impl.StdPatternsPackageImpl#getWhile()
	 * @generated
	 */
	int WHILE = 9;

	/**
	 * The feature id for the '<em><b>Name</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int WHILE__NAME = STD_BPD_PATTERN__NAME;

	/**
	 * The number of structural features of the '<em>While</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int WHILE_FEATURE_COUNT = STD_BPD_PATTERN_FEATURE_COUNT + 0;


	/**
	 * Returns the meta object for class '{@link net.yienyien.process.folder.stdPatterns.StdBPDPattern <em>Std BPD Pattern</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Std BPD Pattern</em>'.
	 * @see net.yienyien.process.folder.stdPatterns.StdBPDPattern
	 * @generated
	 */
	EClass getStdBPDPattern();

	/**
	 * Returns the meta object for class '{@link net.yienyien.process.folder.stdPatterns.Flow <em>Flow</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Flow</em>'.
	 * @see net.yienyien.process.folder.stdPatterns.Flow
	 * @generated
	 */
	EClass getFlow();

	/**
	 * Returns the meta object for class '{@link net.yienyien.process.folder.stdPatterns.Other <em>Other</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Other</em>'.
	 * @see net.yienyien.process.folder.stdPatterns.Other
	 * @generated
	 */
	EClass getOther();

	/**
	 * Returns the meta object for class '{@link net.yienyien.process.folder.stdPatterns.Pick <em>Pick</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Pick</em>'.
	 * @see net.yienyien.process.folder.stdPatterns.Pick
	 * @generated
	 */
	EClass getPick();

	/**
	 * Returns the meta object for class '{@link net.yienyien.process.folder.stdPatterns.Repeat <em>Repeat</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Repeat</em>'.
	 * @see net.yienyien.process.folder.stdPatterns.Repeat
	 * @generated
	 */
	EClass getRepeat();

	/**
	 * Returns the meta object for class '{@link net.yienyien.process.folder.stdPatterns.RepeatWhile <em>Repeat While</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Repeat While</em>'.
	 * @see net.yienyien.process.folder.stdPatterns.RepeatWhile
	 * @generated
	 */
	EClass getRepeatWhile();

	/**
	 * Returns the meta object for class '{@link net.yienyien.process.folder.stdPatterns.Sequence <em>Sequence</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Sequence</em>'.
	 * @see net.yienyien.process.folder.stdPatterns.Sequence
	 * @generated
	 */
	EClass getSequence();

	/**
	 * Returns the meta object for class '{@link net.yienyien.process.folder.stdPatterns.Switch <em>Switch</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Switch</em>'.
	 * @see net.yienyien.process.folder.stdPatterns.Switch
	 * @generated
	 */
	EClass getSwitch();

	/**
	 * Returns the meta object for class '{@link net.yienyien.process.folder.stdPatterns.SynchronizingProcess <em>Synchronizing Process</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Synchronizing Process</em>'.
	 * @see net.yienyien.process.folder.stdPatterns.SynchronizingProcess
	 * @generated
	 */
	EClass getSynchronizingProcess();

	/**
	 * Returns the meta object for class '{@link net.yienyien.process.folder.stdPatterns.While <em>While</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>While</em>'.
	 * @see net.yienyien.process.folder.stdPatterns.While
	 * @generated
	 */
	EClass getWhile();

	/**
	 * Returns the factory that creates the instances of the model.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the factory that creates the instances of the model.
	 * @generated
	 */
	StdPatternsFactory getStdPatternsFactory();

	/**
	 * <!-- begin-user-doc -->
	 * Defines literals for the meta objects that represent
	 * <ul>
	 *   <li>each class,</li>
	 *   <li>each feature of each class,</li>
	 *   <li>each enum,</li>
	 *   <li>and each data type</li>
	 * </ul>
	 * <!-- end-user-doc -->
	 * @generated
	 */
	interface Literals {
		/**
		 * The meta object literal for the '{@link net.yienyien.process.folder.stdPatterns.impl.StdBPDPatternImpl <em>Std BPD Pattern</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see net.yienyien.process.folder.stdPatterns.impl.StdBPDPatternImpl
		 * @see net.yienyien.process.folder.stdPatterns.impl.StdPatternsPackageImpl#getStdBPDPattern()
		 * @generated
		 */
		EClass STD_BPD_PATTERN = eINSTANCE.getStdBPDPattern();

		/**
		 * The meta object literal for the '{@link net.yienyien.process.folder.stdPatterns.impl.FlowImpl <em>Flow</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see net.yienyien.process.folder.stdPatterns.impl.FlowImpl
		 * @see net.yienyien.process.folder.stdPatterns.impl.StdPatternsPackageImpl#getFlow()
		 * @generated
		 */
		EClass FLOW = eINSTANCE.getFlow();

		/**
		 * The meta object literal for the '{@link net.yienyien.process.folder.stdPatterns.impl.OtherImpl <em>Other</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see net.yienyien.process.folder.stdPatterns.impl.OtherImpl
		 * @see net.yienyien.process.folder.stdPatterns.impl.StdPatternsPackageImpl#getOther()
		 * @generated
		 */
		EClass OTHER = eINSTANCE.getOther();

		/**
		 * The meta object literal for the '{@link net.yienyien.process.folder.stdPatterns.impl.PickImpl <em>Pick</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see net.yienyien.process.folder.stdPatterns.impl.PickImpl
		 * @see net.yienyien.process.folder.stdPatterns.impl.StdPatternsPackageImpl#getPick()
		 * @generated
		 */
		EClass PICK = eINSTANCE.getPick();

		/**
		 * The meta object literal for the '{@link net.yienyien.process.folder.stdPatterns.impl.RepeatImpl <em>Repeat</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see net.yienyien.process.folder.stdPatterns.impl.RepeatImpl
		 * @see net.yienyien.process.folder.stdPatterns.impl.StdPatternsPackageImpl#getRepeat()
		 * @generated
		 */
		EClass REPEAT = eINSTANCE.getRepeat();

		/**
		 * The meta object literal for the '{@link net.yienyien.process.folder.stdPatterns.impl.RepeatWhileImpl <em>Repeat While</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see net.yienyien.process.folder.stdPatterns.impl.RepeatWhileImpl
		 * @see net.yienyien.process.folder.stdPatterns.impl.StdPatternsPackageImpl#getRepeatWhile()
		 * @generated
		 */
		EClass REPEAT_WHILE = eINSTANCE.getRepeatWhile();

		/**
		 * The meta object literal for the '{@link net.yienyien.process.folder.stdPatterns.impl.SequenceImpl <em>Sequence</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see net.yienyien.process.folder.stdPatterns.impl.SequenceImpl
		 * @see net.yienyien.process.folder.stdPatterns.impl.StdPatternsPackageImpl#getSequence()
		 * @generated
		 */
		EClass SEQUENCE = eINSTANCE.getSequence();

		/**
		 * The meta object literal for the '{@link net.yienyien.process.folder.stdPatterns.impl.SwitchImpl <em>Switch</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see net.yienyien.process.folder.stdPatterns.impl.SwitchImpl
		 * @see net.yienyien.process.folder.stdPatterns.impl.StdPatternsPackageImpl#getSwitch()
		 * @generated
		 */
		EClass SWITCH = eINSTANCE.getSwitch();

		/**
		 * The meta object literal for the '{@link net.yienyien.process.folder.stdPatterns.impl.SynchronizingProcessImpl <em>Synchronizing Process</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see net.yienyien.process.folder.stdPatterns.impl.SynchronizingProcessImpl
		 * @see net.yienyien.process.folder.stdPatterns.impl.StdPatternsPackageImpl#getSynchronizingProcess()
		 * @generated
		 */
		EClass SYNCHRONIZING_PROCESS = eINSTANCE.getSynchronizingProcess();

		/**
		 * The meta object literal for the '{@link net.yienyien.process.folder.stdPatterns.impl.WhileImpl <em>While</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see net.yienyien.process.folder.stdPatterns.impl.WhileImpl
		 * @see net.yienyien.process.folder.stdPatterns.impl.StdPatternsPackageImpl#getWhile()
		 * @generated
		 */
		EClass WHILE = eINSTANCE.getWhile();

	}

} //StdPatternsPackage
